<?php



class FacturacionOrdenDeServicioMapBuilder implements MapBuilder {

	
	const CLASS_NAME = 'plugins/facturacion/lib/model.map.FacturacionOrdenDeServicioMapBuilder';

	
	private $dbMap;

	
	public function isBuilt()
	{
		return ($this->dbMap !== null);
	}

	
	public function getDatabaseMap()
	{
		return $this->dbMap;
	}

	
	public function doBuild()
	{
		$this->dbMap = Propel::getDatabaseMap(FacturacionOrdenDeServicioPeer::DATABASE_NAME);

		$tMap = $this->dbMap->addTable(FacturacionOrdenDeServicioPeer::TABLE_NAME);
		$tMap->setPhpName('FacturacionOrdenDeServicio');
		$tMap->setClassname('FacturacionOrdenDeServicio');

		$tMap->setUseIdGenerator(true);

		$tMap->setPrimaryKeyMethodInfo('facturacion.seq_orden_de_servicio');

		$tMap->addPrimaryKey('ID', 'Id', 'INTEGER', true, null);

		$tMap->addForeignKey('TERCERO_ID', 'TerceroId', 'INTEGER', 'kernel.tercero', 'ID', true, null);

		$tMap->addForeignKey('CIUDAD_ID', 'CiudadId', 'BIGINT', 'kernel.ciudad', 'ID', true, null);

		$tMap->addColumn('DIRECCION_SERVICIO', 'DireccionServicio', 'VARCHAR', false, 255);

		$tMap->addColumn('CREDENCIAL', 'Credencial', 'VARCHAR', false, 255);

		$tMap->addColumn('FECHA_REPORTE', 'FechaReporte', 'TIMESTAMP', true, null);

		$tMap->addColumn('FECHA_ATENCION_SERVICIO', 'FechaAtencionServicio', 'TIMESTAMP', false, null);

		$tMap->addColumn('FECHA_CULMINACION_SERVICIO', 'FechaCulminacionServicio', 'TIMESTAMP', false, null);

		$tMap->addColumn('OBSERVACIONES', 'Observaciones', 'VARCHAR', false, 255);

		$tMap->addForeignKey('COORDINADOR_ID', 'CoordinadorId', 'BIGINT', 'rrhh.personal', 'ID', true, null);

		$tMap->addForeignKey('VEHICULO_ID', 'VehiculoId', 'INTEGER', 'entidades.vehiculo', 'ID', false, null);

        $tMap->addValidator('ID', 'required_ID', 'RequiredValidator', '', 'Este campo es necesario');
    
        $tMap->addValidator('TERCERO_ID', 'required_TERCERO_ID', 'RequiredValidator', '', 'Este campo es necesario');
    
        $tMap->addValidator('CIUDAD_ID', 'required_CIUDAD_ID', 'RequiredValidator', '', 'Este campo es necesario');
    
        $tMap->addValidator('DIRECCION_SERVICIO', 'maxLength_DIRECCION_SERVICIO', 'MaxLengthValidator', 255, 'El valor tiene demasiados caracteres. [max= 255]');
    
        $tMap->addValidator('CREDENCIAL', 'maxLength_CREDENCIAL', 'MaxLengthValidator', 255, 'El valor tiene demasiados caracteres. [max= 255]');
    
        $tMap->addValidator('FECHA_REPORTE', 'required_FECHA_REPORTE', 'RequiredValidator', '', 'Este campo es necesario');
    
        $tMap->addValidator('OBSERVACIONES', 'maxLength_OBSERVACIONES', 'MaxLengthValidator', 255, 'El valor tiene demasiados caracteres. [max= 255]');
    
        $tMap->addValidator('COORDINADOR_ID', 'required_COORDINADOR_ID', 'RequiredValidator', '', 'Este campo es necesario');
    
	} 
} 